package com.LeetCodeT.Greedy;
// -*- coding: utf-8 -*-

import java.util.Arrays;

import static java.util.Arrays.stream;

/**
 * Project: AlgorithmsLearn
 *
 * @author: yanking
 * Create time: 2022-03-03 15:00
 * IDE: IntelliJ IDEA
 * Introduction:
 */
public class LargestPerimeter {
    public int largestPerimeter(int[] nums) {
        // 判断给定多条边是否可以构成三角形，如果可以返回，可以构成三角形的最大周长，如果不可以返回0
        Arrays.sort(nums);
        int n = nums.length;
        // 选取的数组中构建三角形的三条边
        int i = n - 1, j = n - 2, k = n - 3;
        while (k >= 0) {
            int max = nums[i];
            int sum = nums[i] + nums[j] + nums[k];
            if (sum - max > max) {
                return sum;
            } else {
                --i;
                --j;
                --k;
            }
        }
        return 0;


    }
}
